{"text_format":"1","workbook":"xlsx","n_sheets":3,"sheets":["Calculator","Rotations","Help"],"not_rendered":{"charts":0,"images":6,"macros":1,"external_links":0,"defined_names":0,"comments":0,"pivot_tables":0},"unopened":[],"bounds":{"document_bytes":16777216,"sheet_cells":100000,"rows_first":2000,"rows_last":500,"rows_between":2000,"halvings":0,"cell_chars":16384,"cell_head_chars":4096},"cells_cut":0,"cells_raw":0,"read":"whole","date_system":"1900"}

{"sheet":"Calculator","index":0,"n_rows":19,"n_cols":8,"rows_kept":19,"cut":false,"hidden":false,"merged":[]}
[null,"Mohr's Circle Calculator"]
[]
[null,null,10]
[null,null,-10,"[MPa]"]
[null,null,0]
[null,"θ = ",20,"[degrees(˚)]"]
[]
[]
[]
[]
[]
[null,null,10,null,7.6604444363175013,"[MPa]"]
[null,null,-10,null,-7.6604444593922452,"[MPa]"]
[null,null,10,null,-6.4278760907544132,"[MPa]"]
[null,null,0,"[deg]"," "]
[null,null,90,"[deg]",null,null,null,"Properly Oriented Element"]
[]
[null,"*Valid for:","MPa"]
[null,null,"ksi"]

{"sheet":"Rotations","index":1,"n_rows":6,"n_cols":2,"rows_kept":6,"cut":false,"hidden":true,"merged":[]}
["Last Rotations: "]
[]
[-40,"minor"]
[0,"major"]
[20,"element"]
["N","Flipped"]

{"sheet":"Help","index":2,"n_rows":25,"n_cols":2,"rows_kept":25,"cut":false,"hidden":false,"merged":[[0,1,1,8],[3,1,9,8],[11,1,22,8],[24,1,37,8]]}
["Objective:","This workbook calculates the stresses on an element of a material experiencing some kind of external force. "]
[]
[]
["Instructions:","Enter the stresses on the element at a non-rotated position into the pink spots on the spreadsheet. If you would like to calculate the stresses of an element inclined a certain angle, enter that angle into the slot for Ө. Hit calculate and read values from green (principal stresses) and yellow (rotated angle stresses) boxes. (Remember that negative shear is upward!) The element diagram will rotate according to the specified angle Ө."]
[]
[]
[]
[]
[]
[]
[]
["Documentation:","The stresses on a non-rotated element are first required from the user, which the workbook then uses to calculate outputs of the principal (maximum and minimum normal and shear) stresses for the element, as well as the stresses at a rotated angle (as defined by the user). The workbook then graphs these stresses on Mohr's circle by rotating the major and minor axes, with the blue and orange circles representing the original stresses (σx, σy, and ꞇxy) on the major axis, and the other axis, the minor axis, representing the stresses at the rotated angle (σx1, σy1, and ꞇx1y1). The max and min normal stresses and max and min shear stresses are at the farthest right, left, bottom, and top points of the circle, respectively. The values of these stresses are labeled with dynamic text boxes. The blue arc in Mohr's circle represents the angle between the principal axis and the axis specified with the angle Ө, giving a graphical representation of the desired point of stress. "]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[null,"The calculations in the code are fairly simple and straightforward. The graphics are a bit more complex. Everything runs on rotations - the objects themselves are being rotated each time the code is called. Each iteration of the code has to clear the previous rotations. Since there is no reset button on a drawing, we have to know how far each was rotated the previous iteration. These values are stored in a hidden sheet so they will not be altered. Altering these values will completely ruin the calibration of the graphics, and it will have to be manually reset using some included (but unused) code. The calculate button calls a function that reads the previous iteration's values, rotates the objects back to the origin, and then rotates everything to match the current calculated values. The same idea is used with both the circle and the element itself.  It is important to note that Excel works in radians; however, visual basic works in degrees clockwise. Every calculation must be done in radians in order to call excel trig functions, and every rotation must be done in degrees in the clockwise direction. "]